<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        // 数据类型转换常用方法
        // ①其他类型转字符串
        // String()
        // 变量.toString()
        // console.log(String(123), typeof String(123))
        // console.log(String(true), typeof String(true))
        // console.log(String(null), typeof String(null))
        // console.log(String(undefined), typeof String(undefined))
        // console.log(String([1, 2, 3]), typeof String([1, 2, 3]))
        // let num1 = 123
        // let b = true
        // console.log(num1.toString(), typeof num1.toString())
        // console.log(b.toString(), typeof b.toString())

        // ②其他类型转数字
        // parseInt()
        // let str1 = '123'
        // let str2 = '123.456'
        // let str3 = '123abc'
        // let str4 = 'abc123'
        // let str5 = NaN   //非数字的数字，类型是 number
        // console.log(parseInt(str1), typeof parseInt(str1))
        // console.log(parseInt(str2), typeof parseInt(str2))
        // console.log(parseInt(str3), typeof parseInt(str3))
        // console.log(parseInt(str4), typeof parseInt(str4))
        // console.log(typeof str5)

        // parseFloat()
        // let str1 = '123'
        // let str2 = '123.456'
        // let str3 = '123abc'
        // let str4 = 'abc123'
        // console.log(parseFloat(str1), typeof parseFloat(str1))
        // console.log(parseFloat(str2), typeof parseFloat(str2))
        // console.log(parseFloat(str3), typeof parseFloat(str3))
        // console.log(parseFloat(str4), typeof parseFloat(str4))

        // Number()
        // let str1 = '123'
        // let str2 = '123.456'
        // let str3 = '123.45 元'
        // let str4 = 'abc123'
        // console.log(Number(str1), typeof Number(str1))
        // console.log(Number(str2), typeof Number(str2))
        // console.log(Number(str3), typeof Number(str3))
        // console.log(Number(str4), typeof Number(str4))

        // ③其他类型转布尔
        // Boolean()
        // let str1 = ''
        // let str9 = ' '
        // let str2 = '123'
        // let str8 = 0
        // let str3 = 1
        // let str4 = 'false'
        // let str6 = undefined
        // let str7 = null
        // console.log(Boolean(str1), typeof Boolean(str1))
        // console.log(Boolean(str9), typeof Boolean(str9))
        // console.log(Boolean(str2), typeof Boolean(str2))
        // console.log(Boolean(str8), typeof Boolean(str8))
        // console.log(Boolean(str3), typeof Boolean(str3))
        // console.log(Boolean(str4), typeof Boolean(str4))
        // console.log(Boolean(str6), typeof Boolean(str6))
        // console.log(Boolean(str7), typeof Boolean(str7))


        // ④隐式转换
        // + 操作符
        // let str1 = '123' + 0
        // let str1 = '123' * 1
        // let str1 = '123' / 1
        // let str1 = '123' - 0
        // console.log(str1, typeof str1)
        // !! 操作符
        let str1 = !!null
        console.log(str1, typeof str1)


        // let arr = null
        // if (arr) {
        //     console.log('true')
        // } else {
        //     console.log('false')
        // }
    </script>
</head>
<body>

</body>
</html>
